Multicast services are increasing in popularity as service providers take advantage of multicasting solutions to efficiently distribute content to a large number of users. For example, multicasting can be used to provide streaming content such as news or video to many subscribers. Additionally, multicast services can provide location-based information such as traffic reports and advertisements tailored for users in a specific geographical area. While these applications gain performance when the underlying network supporting them have multicasting capabilities, the networks are not consistent in this capability across the entire infrastructure especially since IP multicasting is not ubiquitous to all networks. The quality of multicast services also becomes problematic in light of the wireless network environment and the maintenance of multicast sessions to users moving through various access networks.
Multicast services are currently supported by techniques, such as IP multicasting, which have been developed for wired networks and non-mobile users. For IP multicasting, joining and advertisement of multicast groups is handled through standard protocols such as Internet Group Management Protocol (IGMP). Using this technique multicast packets are generally routed along a single shared tree or multiple source-based spanning trees for efficient distribution. Optimized paths are established and maintained by multicast routing protocols such as Protocol Independent Multicast (PIM).
These general multicast techniques do not handle large numbers of distinct multicast groups that may be needed to designate location-specific multicast services. Other solutions have been proposed to address this problem, e.g. Explicit Multicast (Xcast) and Source Specific Multicast (SSM). Xcast packets include addresses of all nodes in the multicast group and is useful if the membership in each group is small. SSM defines each multicast group by a multicast address and also by a sending, or source, IP address. Thus, SSM allows content providers to support services without requiring a unique IP multicast address. These solutions can be used to support localized services whereby a single address is used to specify a location-based service while a different source may be used in each location to provide the location-based information.
To support multicasting in mobile wireless networks requires consideration of issues not relevant for wired networks. In particular, it is desirable from the wireless user's point of view to maintain multicast services from any point of attachment to the network. For example, users in cars moving through different access networks need the capability to continuously receive multicast streams and location-specific information.
Research relevant to support multicasting for mobile nodes has been done specifically for Mobile IP. Mobile IP is a standard protocol that uses the Internet Protocol (IP) to provide user mobility, transparency to applications and higher level protocols. Mobility of a user is defined by the movement of user or node into a new IP subnetwork. The movement of nodes to a new subnetwork requires that a new route for IP packets be established for sending to the destination node. Multicast approaches with support in Mobile IP have been proposed. For example. the bi-directional tunneling solution for Mobile IP puts the burden of forwarding the multicast packets to mobile users on the Home Agent (HA). However, when an HA has a number of users in the same multicast group visiting the same foreign network, tunneling multiple multicast packets to the foreign network is inefficient. To avoid the duplication of multicast packets, remote subscription has been proposed whereby a user desiring to join a multicast group will do so in each visited network through a Foreign Agent (FA). However, this requires that after every handoff the user must rejoin a multicast group. In addition, the multicast trees used to route multicast packets will be updated after every handoff to track multicast group membership. To limit tree updates and duplication of multicast packets, proxies or agent-based solutions have also been proposed.
The known multicast solutions rely on knowledge and control of the network routers to perform multicast routing. However, since multicasting capabilities are not ubiquitous, tunneling techniques have been proposed to route IP multicast packets to stationary users across non-multicast-enabled networks. For example, Automatic Multicast Tunneling (AMT) uses an encapsulation interface that takes multicast IP packets and encapsulates them in unicast packets to traverse over non-multicast capable networks. Similarly, UDP Multicast Tunneling Protocol (UMTP) encapsulates UDP multicast packets and tunnels them through non-multicast capable networks.
There remains a need in the art for improvements in the field of multicasting, particularly for mobile users in diverse networks.